package main

import "fmt"

type Stu struct {
	Name string
	Age  int
}

func main() {

	//方式1
	//在创建结构体变量时，就直接指定字段的值
	var stu1 = Stu{"小明", 19} // stu1 -->结构体数据空间
	stu2 := Stu{"小李", 18}

	//在创建结构体 把字段名和字段值写在一起，这种写法不依赖字段的顺序
	var stu3 = Stu{
		Name: "jack",
		Age:  33,
	}

	stu4 := Stu{
		Age:  50,
		Name: "mary",
	}
	fmt.Println(stu1, stu2, stu3, stu4)

	//方式2 返回结构体的指针类型
	//var stu5 *Stu = &Stu{"小王", 16} // 上下两种写法都行
	var stu5 = &Stu{"小王", 16} // stu5 ---->地址---->结构体数据空间
	stu6 := &Stu{"小美", 18}

	//在创建结构体 把字段名和字段值写在一起，这种写法不依赖字段的顺序
	var stu7 = &Stu{
		Name: "小强",
		Age:  80,
	}

	stu8 := &Stu{
		Age:  40,
		Name: "小张",
	}
	fmt.Println(*stu5, *stu6, *stu7, *stu8)
}
